import request from '@/utils/request'

/**
 * 获取所有门禁设备及其状态
 * (此为示意，实际可能需要分页或按场馆获取)
 * @returns Promise
 */
export function getAccessPoints() {
  // 注意：此为模拟API，实际应替换为真实接口
  // return request.get('/api/devices/access-points')
  
  // 暂时返回模拟数据
  return Promise.resolve({
    data: [
      { id: 'AC001', name: 'A馆-南门', status: 'online_closed' },
      { id: 'AC002', name: '篮球场-1号入口', status: 'offline' },
      { id: 'AC003', name: '健身房-闸机', status: 'online_open' },
    ]
  })
}

/**
 * 获取单个门禁设备的状态
 * @param {string} deviceId 设备ID
 * @returns Promise
 */
export function getAccessPointStatus(deviceId) {
  return request.get(`/api/devices/access/${deviceId}/status`)
}

/**
 * 控制门禁设备
 * @param {string} deviceId 设备ID
 * @param {string} action 'open' 或 'close'
 * @returns Promise
 */
export function controlAccessPoint(deviceId, action) {
  return request.post(`/api/devices/access/${deviceId}/control`, { action })
}

/**
* 获取所有灯光设备及其状态
* @returns Promise
*/
export function getLightingPoints() {
  // 注意：此为模拟API，实际应替换为真实接口
  return Promise.resolve({
    data: [
        { id: 'LT001', name: 'A馆-主照明', status: 'off' },
        { id: 'LT002', name: '篮球场-1号场地灯光', status: 'on' },
        { id: 'LT003', name: '羽毛球场-全部灯光', status: 'off' },
    ]
  })
}

/**
 * 控制灯光设备
 * @param {string} deviceId 设备ID
 * @param {string} action 'on' 或 'off'
 * @returns Promise
 */
export function controlLightingPoint(deviceId, action) {
  return request.post(`/api/devices/lighting/${deviceId}/control`, { action })
}

/**
 * 提交运动数据分析的队伍设置
 * @param {object} setupData 包含sessionId, teamA, teamB信息的对象
 * @returns Promise
 */
export function setupAnalysisSession(setupData) {
  return request.post('/api/analysis/session/setup', setupData)
} 